libglnx porting: Use glnx_opendirat()
authorColin Walters <walters@verbum.org>
Fri, 18 Mar 2016 21:17:54 +0000 (17:17 -0400)
committerColin Walters <walters@verbum.org>
Wed, 23 Mar 2016 14:26:01 +0000 (10:26 -0400)
This unfortunately adds *more* `gs_file_get_path_cached()`, but we'll
fix that all in one go.

src/libostree/ostree-repo-checkout.c
src/libostree/ostree-repo.c
src/libostree/ostree-sysroot-deploy.c
src/libotutil/ot-gio-utils.c

index d6ad494b6f59927ece586e9d81680d59a074e942..0a77da0280b9daeeb70c87750f407e260eb72cee 100644 (file)
@@ -655,9 +655,8 @@ checkout_tree_at (OstreeRepo                        *self,
         }
     }
 
-  if (!gs_file_open_dir_fd_at (destination_parent_fd, destination_name,
-                               &destination_dfd,
-                               cancellable, error))
+  if (!glnx_opendirat (destination_parent_fd, destination_name, TRUE,
+                       &destination_dfd, error))
     goto out;
 
   /* Set the xattrs now, so any derived labeling works */
index 41377e76698b3f21dd98287e3d58b32b16fed6cd..09791c6a356e71be014c12472888cea18bd9275d 100644 (file)
@@ -2271,14 +2271,15 @@ ostree_repo_open (OstreeRepo    *self,
     goto out;
   g_strdelimit (self->boot_id, "\n", '\0');
 
-  if (!gs_file_open_dir_fd (self->repodir, &self->repo_dir_fd, cancellable, error))
+  if (!glnx_opendirat (AT_FDCWD, gs_file_get_path_cached (self->repodir), TRUE,
+                       &self->repo_dir_fd, error))
     {
       g_prefix_error (error, "%s: ", gs_file_get_path_cached (self->repodir));
       goto out;
     }
 
-  if (!gs_file_open_dir_fd_at (self->repo_dir_fd, "objects",
-                               &self->objects_dir_fd, cancellable, error))
+  if (!glnx_opendirat (self->repo_dir_fd, "objects", TRUE,
+                       &self->objects_dir_fd, error))
     {
       g_prefix_error (error, "Opening objects/ directory: ");
       goto out;
@@ -2387,16 +2388,16 @@ ostree_repo_open (OstreeRepo    *self,
         goto out;
     }
 
-  if (!gs_file_open_dir_fd (self->tmp_dir, &self->tmp_dir_fd, cancellable, error))
+  if (!glnx_opendirat (self->repo_dir_fd, "tmp", TRUE, &self->tmp_dir_fd, error))
     goto out;
 
   if (self->mode == OSTREE_REPO_MODE_ARCHIVE_Z2 && self->enable_uncompressed_cache)
     {
       if (!gs_file_ensure_directory (self->uncompressed_objects_dir, TRUE, cancellable, error))
         goto out;
-      if (!gs_file_open_dir_fd (self->uncompressed_objects_dir,
-                                &self->uncompressed_objects_dir_fd,
-                                cancellable, error))
+      if (!glnx_opendirat (self->repo_dir_fd, "uncompressed-objects-cache", TRUE,
+                           &self->uncompressed_objects_dir_fd,
+                           error))
         goto out;
     }
 
index a3a7b305de0476cc4b71c88b03f5960e7ff00efe..77ecb9af125773eff9bdad6ade24aeabb82599aa 100644 (file)
@@ -456,11 +456,14 @@ merge_etc_changes (GFile          *orig_etc,
                                 removed->len,
                                 added->len);
 
-  if (!gs_file_open_dir_fd (orig_etc, &orig_etc_fd, cancellable, error))
+  if (!glnx_opendirat (AT_FDCWD, gs_file_get_path_cached (orig_etc), TRUE,
+                       &orig_etc_fd, error))
     goto out;
-  if (!gs_file_open_dir_fd (modified_etc, &modified_etc_fd, cancellable, error))
+  if (!glnx_opendirat (AT_FDCWD, gs_file_get_path_cached (modified_etc), TRUE,
+                       &modified_etc_fd, error))
     goto out;
-  if (!gs_file_open_dir_fd (new_etc, &new_etc_fd, cancellable, error))
+  if (!glnx_opendirat (AT_FDCWD, gs_file_get_path_cached (new_etc), TRUE,
+                       &new_etc_fd, error))
     goto out;
 
   for (i = 0; i < removed->len; i++)
index f750e75b71cde1a3fa6d557a8ab8c864bcda625d..9b8b0dce10089cb4bb625f3ec34b34d19dab48f1 100644 (file)
@@ -362,8 +362,8 @@ ot_gfile_replace_contents_fsync (GFile          *path,
 
   parent = g_file_get_parent (path);
 
-  if (!gs_file_open_dir_fd (parent, &parent_dfd,
-                            cancellable, error))
+  if (!glnx_opendirat (AT_FDCWD, gs_file_get_path_cached (parent), TRUE,
+                       &parent_dfd, error))
     goto out;
 
   if (!ot_file_replace_contents_at (parent_dfd, target_basename,
@@ -426,7 +426,8 @@ ot_util_fsync_directory (GFile         *dir,
   gboolean ret = FALSE;
   int dfd = -1;
 
-  if (!gs_file_open_dir_fd (dir, &dfd, cancellable, error))
+  if (!glnx_opendirat (AT_FDCWD, gs_file_get_path_cached (dir), TRUE,
+                       &dfd, error))
     goto out;
 
   if (fsync (dfd) != 0)